package com.ys.entity.base;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TB_UserPersonalTaxCount", catalog="Id")
public class TbUserPersonalTaxCount extends BaseEntity<TbUserPersonalTaxCount> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="CountMonth", nameJava="countMonth", typeDataBase="char")
	private String countMonth;
	@YsField(nameDataBase="UserId", nameJava="userId", typeDataBase="varchar")
	private String userId;
	@YsField(nameDataBase="OrgId", nameJava="orgId", typeDataBase="varchar")
	private String orgId;
	@YsField(nameDataBase="PaySlipId", nameJava="paySlipId", typeDataBase="bigint")
	private Long paySlipId;
	@YsField(nameDataBase="Income", nameJava="income", typeDataBase="decimal")
	private BigDecimal income;
	@YsField(nameDataBase="DeductCost", nameJava="deductCost", typeDataBase="decimal")
	private BigDecimal deductCost;
	@YsField(nameDataBase="SpecialDeductCost", nameJava="specialDeductCost", typeDataBase="decimal")
	private BigDecimal specialDeductCost;
	@YsField(nameDataBase="OtherDeductCost", nameJava="otherDeductCost", typeDataBase="decimal")
	private BigDecimal otherDeductCost;
	@YsField(nameDataBase="SpecialAddDeductCost", nameJava="specialAddDeductCost", typeDataBase="decimal")
	private BigDecimal specialAddDeductCost;
	@YsField(nameDataBase="IncomeAddup", nameJava="incomeAddup", typeDataBase="decimal")
	private BigDecimal incomeAddup;
	@YsField(nameDataBase="DeductCostAddup", nameJava="deductCostAddup", typeDataBase="decimal")
	private BigDecimal deductCostAddup;
	@YsField(nameDataBase="SpecialDeductCostAddup", nameJava="specialDeductCostAddup", typeDataBase="decimal")
	private BigDecimal specialDeductCostAddup;
	@YsField(nameDataBase="OtherDeductCostAddup", nameJava="otherDeductCostAddup", typeDataBase="decimal")
	private BigDecimal otherDeductCostAddup;
	@YsField(nameDataBase="SpecialAddDeductCostAddup", nameJava="specialAddDeductCostAddup", typeDataBase="decimal")
	private BigDecimal specialAddDeductCostAddup;
	@YsField(nameDataBase="NeedPayGetTax", nameJava="needPayGetTax", typeDataBase="decimal")
	private BigDecimal needPayGetTax;
	@YsField(nameDataBase="YearAddupTax", nameJava="yearAddupTax", typeDataBase="decimal")
	private BigDecimal yearAddupTax;
	@YsField(nameDataBase="SubmitAddupTax", nameJava="submitAddupTax", typeDataBase="decimal")
	private BigDecimal submitAddupTax;
	@YsField(nameDataBase="MonthNeedPayTax", nameJava="monthNeedPayTax", typeDataBase="decimal")
	private BigDecimal monthNeedPayTax;
	@YsField(nameDataBase="CountMonthBefore", nameJava="countMonthBefore", typeDataBase="char")
	private String countMonthBefore;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TbUserPersonalTaxCount setId(Long id) {
		this.id = id;
		return this;
	}
	public String getCountMonth() {
		return countMonth;
	}
	public TbUserPersonalTaxCount setCountMonth(String countMonth) {
		this.countMonth = countMonth;
		return this;
	}
	public String getUserId() {
		return userId;
	}
	public TbUserPersonalTaxCount setUserId(String userId) {
		this.userId = userId;
		return this;
	}
	public String getOrgId() {
		return orgId;
	}
	public TbUserPersonalTaxCount setOrgId(String orgId) {
		this.orgId = orgId;
		return this;
	}
	public Long getPaySlipId() {
		return paySlipId;
	}
	public TbUserPersonalTaxCount setPaySlipId(Long paySlipId) {
		this.paySlipId = paySlipId;
		return this;
	}
	public BigDecimal getIncome() {
		return income;
	}
	public TbUserPersonalTaxCount setIncome(BigDecimal income) {
		this.income = income;
		return this;
	}
	public BigDecimal getDeductCost() {
		return deductCost;
	}
	public TbUserPersonalTaxCount setDeductCost(BigDecimal deductCost) {
		this.deductCost = deductCost;
		return this;
	}
	public BigDecimal getSpecialDeductCost() {
		return specialDeductCost;
	}
	public TbUserPersonalTaxCount setSpecialDeductCost(BigDecimal specialDeductCost) {
		this.specialDeductCost = specialDeductCost;
		return this;
	}
	public BigDecimal getOtherDeductCost() {
		return otherDeductCost;
	}
	public TbUserPersonalTaxCount setOtherDeductCost(BigDecimal otherDeductCost) {
		this.otherDeductCost = otherDeductCost;
		return this;
	}
	public BigDecimal getSpecialAddDeductCost() {
		return specialAddDeductCost;
	}
	public TbUserPersonalTaxCount setSpecialAddDeductCost(BigDecimal specialAddDeductCost) {
		this.specialAddDeductCost = specialAddDeductCost;
		return this;
	}
	public BigDecimal getIncomeAddup() {
		return incomeAddup;
	}
	public TbUserPersonalTaxCount setIncomeAddup(BigDecimal incomeAddup) {
		this.incomeAddup = incomeAddup;
		return this;
	}
	public BigDecimal getDeductCostAddup() {
		return deductCostAddup;
	}
	public TbUserPersonalTaxCount setDeductCostAddup(BigDecimal deductCostAddup) {
		this.deductCostAddup = deductCostAddup;
		return this;
	}
	public BigDecimal getSpecialDeductCostAddup() {
		return specialDeductCostAddup;
	}
	public TbUserPersonalTaxCount setSpecialDeductCostAddup(BigDecimal specialDeductCostAddup) {
		this.specialDeductCostAddup = specialDeductCostAddup;
		return this;
	}
	public BigDecimal getOtherDeductCostAddup() {
		return otherDeductCostAddup;
	}
	public TbUserPersonalTaxCount setOtherDeductCostAddup(BigDecimal otherDeductCostAddup) {
		this.otherDeductCostAddup = otherDeductCostAddup;
		return this;
	}
	public BigDecimal getSpecialAddDeductCostAddup() {
		return specialAddDeductCostAddup;
	}
	public TbUserPersonalTaxCount setSpecialAddDeductCostAddup(BigDecimal specialAddDeductCostAddup) {
		this.specialAddDeductCostAddup = specialAddDeductCostAddup;
		return this;
	}
	public BigDecimal getNeedPayGetTax() {
		return needPayGetTax;
	}
	public TbUserPersonalTaxCount setNeedPayGetTax(BigDecimal needPayGetTax) {
		this.needPayGetTax = needPayGetTax;
		return this;
	}
	public BigDecimal getYearAddupTax() {
		return yearAddupTax;
	}
	public TbUserPersonalTaxCount setYearAddupTax(BigDecimal yearAddupTax) {
		this.yearAddupTax = yearAddupTax;
		return this;
	}
	public BigDecimal getSubmitAddupTax() {
		return submitAddupTax;
	}
	public TbUserPersonalTaxCount setSubmitAddupTax(BigDecimal submitAddupTax) {
		this.submitAddupTax = submitAddupTax;
		return this;
	}
	public BigDecimal getMonthNeedPayTax() {
		return monthNeedPayTax;
	}
	public TbUserPersonalTaxCount setMonthNeedPayTax(BigDecimal monthNeedPayTax) {
		this.monthNeedPayTax = monthNeedPayTax;
		return this;
	}
	public String getCountMonthBefore() {
		return countMonthBefore;
	}
	public TbUserPersonalTaxCount setCountMonthBefore(String countMonthBefore) {
		this.countMonthBefore = countMonthBefore;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TbUserPersonalTaxCount setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TbUserPersonalTaxCount setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TbUserPersonalTaxCount setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TbUserPersonalTaxCount tbUserPersonalTaxCount(
		String countMonth,
		String userId,
		String orgId,
		Long paySlipId,
		BigDecimal income,
		BigDecimal deductCost,
		BigDecimal specialDeductCost,
		BigDecimal otherDeductCost,
		BigDecimal specialAddDeductCost,
		BigDecimal incomeAddup,
		BigDecimal deductCostAddup,
		BigDecimal specialDeductCostAddup,
		BigDecimal otherDeductCostAddup,
		BigDecimal specialAddDeductCostAddup,
		BigDecimal needPayGetTax,
		BigDecimal yearAddupTax,
		BigDecimal submitAddupTax,
		BigDecimal monthNeedPayTax,
		String countMonthBefore,
		Integer status
			) {
		TbUserPersonalTaxCount entity = new TbUserPersonalTaxCount();
		entity.setCountMonth(countMonth);
		entity.setUserId(userId);
		entity.setOrgId(orgId);
		entity.setPaySlipId(paySlipId);
		entity.setIncome(income);
		entity.setDeductCost(deductCost);
		entity.setSpecialDeductCost(specialDeductCost);
		entity.setOtherDeductCost(otherDeductCost);
		entity.setSpecialAddDeductCost(specialAddDeductCost);
		entity.setIncomeAddup(incomeAddup);
		entity.setDeductCostAddup(deductCostAddup);
		entity.setSpecialDeductCostAddup(specialDeductCostAddup);
		entity.setOtherDeductCostAddup(otherDeductCostAddup);
		entity.setSpecialAddDeductCostAddup(specialAddDeductCostAddup);
		entity.setNeedPayGetTax(needPayGetTax);
		entity.setYearAddupTax(yearAddupTax);
		entity.setSubmitAddupTax(submitAddupTax);
		entity.setMonthNeedPayTax(monthNeedPayTax);
		entity.setCountMonthBefore(countMonthBefore);
		entity.setStatus(status);
		return entity;
	}
}